home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / System / MRAC / Generate / cf-feigenbaum next >
Lisp/Scheme  |  1998-10-24  |  2KB  |  52 lines

  1. cf-feigenbaum k iter add-k init-x list
  2.  
  3. Conversion is a key element in SCOM composing. Vectors can become integers, integers can become symbols, and so on. In this respect cf-feigenbaum, like cf-noise-white, provides a more specific facility than cfunction in enabling conversion and substitution. 
  4.  
  5. (setq sym1 '(a b c d e f g h i j k l))
  6. (setq sym2 '((a b c d e f) (g h i j k l)))
  7. (setq len1 '(1/16 2/16 3/16 -1/32 3/32))
  8. (setq len2 '((1/16 2/16 3/16 -1/32 3/32) (1/20 -1/20 2/20 3/20 4/20 -2/20)))
  9.  
  10. (cf-feigenbaum 3.39 12 .001 .8 sym1)
  11. => (l a l a l a l a l a l d)
  12.  
  13. Here, a symbol-list called sym1 becomes a reference sequence for a conversion process, from symbols a to l generated via the the function gen-feigenbaum, to a list of symbols between a and l that have been substituted in an appropriate quantitive sequence. In effect, all the vector to list to integer to symbol conversions take place automatically saving the composer inserting chains of conversion functions to achieve a result. The conversion and substitution process may also extend to lists of symbols within a reference sequence and also to single and multiple lists of note-lengths. 
  14.  
  15. (cf-feigenbaum 3.39 12 '(.001 .099) .8 sym1)
  16. => (l a l a l a k b k b k d)
  17.  
  18. (cf-feigenbaum '(3.39 3.56) 12 '(.001 .099) .8 sym1)
  19. => (l b l g j a l c k c k f)
  20.  
  21. (cf-feigenbaum '(3.39 3.56) '(12 12) '(.001 .099) .8 sym1)
  22. => ((e k c k c k b k c l a j) (f k c k d l a i j g l a))
  23.  
  24. (cf-feigenbaum
  25.  '(3.39 3.56) '(12 12) '(.001 .099) '(.1 .8) sym1)
  26. => ((g k d l a j h l b l a j) (i h j h k d k e l a c i))
  27.  
  28. (cf-feigenbaum
  29.  '(3.39 3.56) 12 '(.001 .099) '(.1 .8) sym2)
  30. => ((d e b f a e d f b f a e) (k j k j l i l i l g h k))
  31.  
  32. (cf-feigenbaum
  33.  '(3.39 3.56) '(11 3 5 7) '(.001 .099) '(.1 .8) sym2)
  34. => ((b e c f b e d f b f a) (l g k) (f a e b f) (k j k i l g j))
  35.  
  36. (cf-feigenbaum
  37.  '(3.39 3.56) 11 '(.001 .099) '(.1 .2) len1)
  38. => (1/16 3/32 3/16 -1/32 3/16 3/32 3/16 -1/32 3/16 -1/32 3/16)
  39.  
  40. (cf-feigenbaum
  41.  '(3.39 3.56) '(3 5) '(.001 .099) '(.1 .2) len1)
  42. => ((1/16 3/32 2/16) (2/16 3/32 1/16 3/32 2/16))
  43.  
  44. (cf-feigenbaum
  45.  '(3.39 3.56) 5 '(.001 .099) '(.1 .2) len2)
  46. => ((2/16 -1/32 3/16 3/32 1/16) (2/20 -2/20 1/20 -2/20 -1/20))
  47.  
  48. (cf-feigenbaum
  49.  3.56 '(2 3 5 7) '(.001 .099) '(.1 .2) len2)
  50. => ((1/16 3/32) (-1/20 -2/20 1/20) (2/16 3/32 1/16 3/32 2/16)
  51.     (2/20 -2/20 -1/20 4/20 3/20 -2/20 1/20))
  52.